Security News
vlt Debuts New JavaScript Package Manager and Serverless Registry at NodeConf EU
vlt introduced its new package manager and a serverless registry this week, innovating in a space where npm has stagnated.
remark-lint
Advanced tools
remark-lint is a plugin for remark, a Markdown processor powered by plugins. It provides a framework for analyzing and reporting on Markdown code quality issues, ensuring consistency and adherence to specified style guidelines.
Linting Markdown Files
This feature allows you to lint Markdown files to ensure they adhere to specified style guidelines. The code sample demonstrates how to use remark-lint to process a simple Markdown string and report any issues.
const remark = require('remark');
const lint = require('remark-lint');
remark()
.use(lint)
.process('# Hello world!', function (err, file) {
console.error(report(err || file));
});
Custom Rules
remark-lint supports custom rules, allowing you to enforce specific style guidelines. The code sample shows how to use a custom rule (remark-lint-no-emphasis-as-heading) to lint a Markdown string.
const remark = require('remark');
const lint = require('remark-lint');
const noEmphasisAsHeading = require('remark-lint-no-emphasis-as-heading');
remark()
.use(lint)
.use(noEmphasisAsHeading)
.process('# Hello *world*!', function (err, file) {
console.error(report(err || file));
});
Configurable Presets
remark-lint provides configurable presets that bundle multiple rules together for convenience. The code sample demonstrates how to use the 'remark-preset-lint-recommended' preset to lint a Markdown string.
const remark = require('remark');
const lint = require('remark-lint');
const presetLintRecommended = require('remark-preset-lint-recommended');
remark()
.use(lint)
.use(presetLintRecommended)
.process('# Hello world!', function (err, file) {
console.error(report(err || file));
});
markdownlint is a Node.js style checker and lint tool for Markdown files. It provides a set of rules to enforce consistent Markdown style and can be customized with configuration files. Compared to remark-lint, markdownlint is more focused on providing a comprehensive set of built-in rules and is often used as a standalone tool.
markdown-it is a Markdown parser that can be extended with plugins to add custom functionality, including linting. While markdown-it is primarily a parser, it can be combined with plugins to achieve similar linting capabilities as remark-lint. However, it is more flexible and less opinionated about style rules.
textlint is a text linting framework that supports multiple file formats, including Markdown. It allows users to define custom rules and plugins to enforce style guidelines. textlint is more versatile than remark-lint, as it can be used to lint various types of text files, not just Markdown.
remark plugin to support configuration comments for remark lint rules.
See the monorepo readme for more info on remark lint.
This package is a unified (remark) plugin to add support for configuration comments to control remark lint rule messages.
This project is useful when you’re using remark lint rules and want to let authors ignore messages in certain cases. This package is already included in all our presets. If you’re building a preset yourself, you should include this package.
This package is ESM only. In Node.js (version 12.20+, 14.14+, or 16.0+), install with npm:
npm install remark-lint
In Deno with esm.sh
:
import remarkLint from 'https://esm.sh/remark-lint@9'
In browsers with esm.sh
:
<script type="module">
import remarkLint from 'https://esm.sh/remark-lint@9?build'
</script>
On the API:
import {read} from 'to-vfile'
import {reporter} from 'vfile-reporter'
import {remark} from 'remark'
import remarkLint from 'remark-lint'
main()
async function main() {
const file = await remark()
.use(remarkLint)
.process(await read('example.md'))
console.error(reporter(file))
}
On the CLI:
remark --use remark-lint example.md
On the CLI in a config file (here a package.json
):
…
"remarkConfig": {
"plugins": [
…
+ "remark-lint",
…
]
}
…
This package exports no identifiers.
The default export is remarkLint
.
unified().use(remarkLint)
Add support for configuration comments. There are no options.
See Ignore warnings in the monorepo readme for how to use it.
Projects maintained by the unified collective are compatible with all maintained versions of Node.js. As of now, that is Node.js 12.20+, 14.14+, and 16.0+. Our projects sometimes work with older versions, but this is not guaranteed.
See contributing.md
in remarkjs/.github
for ways
to get started.
See support.md
for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.
FAQs
remark plugin to lint Markdown code style
The npm package remark-lint receives a total of 125,185 weekly downloads. As such, remark-lint popularity was classified as popular.
We found that remark-lint demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
vlt introduced its new package manager and a serverless registry this week, innovating in a space where npm has stagnated.
Security News
Research
The Socket Research Team uncovered a malicious Python package typosquatting the popular 'fabric' SSH library, silently exfiltrating AWS credentials from unsuspecting developers.
Security News
At its inaugural meeting, the JSR Working Group outlined plans for an open governance model and a roadmap to enhance JavaScript package management.